﻿using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace BPM.Web.Shared.Data;

/// <summary>
/// 访问日志参数
/// </summary>
public partial class VisLogOutput : BaseVM
{
    /// <summary>
    /// 主键Id
    /// </summary>
    [DisplayName("业务号")]
    [Required(ErrorMessage = "业务号不能为空")]
    [JsonPropertyName("id")]
    public long Id { get; set; }

    /// <summary>
    /// 名称
    /// </summary>
    [DisplayName("名称")]
    [JsonPropertyName("name")]
    public string? Name { get; set; }

    [DisplayName("成功")]
    [JsonPropertyName("success")]
    public YesOrNot Success { get; set; }

    /// <summary>
    /// 具体消息
    /// </summary>
    [DisplayName("具体消息")]
    [JsonPropertyName("message")]
    public string? Message { get; set; }

    /// <summary>
    /// IP
    /// </summary>
    [DisplayName("IP")]
    [JsonPropertyName("ip")]
    public string? Ip { get; set; }

    /// <summary>
    /// 地址
    /// </summary>
    [DisplayName("地址")]
    [JsonPropertyName("location")]
    public string? Location { get; set; }

    /// <summary>
    /// 浏览器
    /// </summary>
    [DisplayName("浏览器")]
    [JsonPropertyName("browser")]
    public string? Browser { get; set; }

    /// <summary>
    /// 操作系统
    /// </summary>
    [DisplayName("操作系统")]
    [JsonPropertyName("os")]
    public string? Os { get; set; }

    [DisplayName("成功")]
    [JsonPropertyName("visType")]
    public LoginType VisType { get; set; }

    /// <summary>
    /// 访问时间
    /// </summary>
    [DisplayName("访问时间")]
    [JsonPropertyName("visTime")]
    public DateTimeOffset? VisTime { get; set; }

    /// <summary>
    /// 访问人
    /// </summary>
    [DisplayName("访问人")]
    [JsonPropertyName("account")]
    public string? Account { get; set; }

}
